<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<!-- Copyright 1997 The Open Group, All Rights Reserved -->
<title>ulimit</title>
</head><body bgcolor=white>
<center>
<font size=2>
The Single UNIX &reg; Specification, Version 2<br>
Copyright &copy; 1997 The Open Group

</font></center><hr size=2 noshade>
<h4><a name = "tag_001_014_2429">&nbsp;</a>NAME</h4><blockquote>
ulimit - set or report file size limit
</blockquote><h4><a name = "tag_001_014_2430">&nbsp;</a>SYNOPSIS</h4><blockquote>
<pre><code>

ulimit <b>[</b>-f<b>][</b><i>blocks</i><b>]
</b></code>
</pre>
</blockquote><h4><a name = "tag_001_014_2431">&nbsp;</a>DESCRIPTION</h4><blockquote>
The
<i>ulimit</i>
utility sets or reports the file-size writing limit
imposed on files written by the shell and its
child processes (files of any size may be read).
Only a process with appropriate privileges can increase the limit.
</blockquote><h4><a name = "tag_001_014_2432">&nbsp;</a>OPTIONS</h4><blockquote>
The
<i>ulimit</i>
utility supports the <b>XBD</b> specification, <a href="../xbd/utilconv.html#usg"><b>Utility Syntax Guidelines</b>&nbsp;</a> .
<p>
The following option is supported:
<dl compact>

<dt><b>-f</b>
<dd>Set (or report, if no
<i>blocks</i>
operand is present), the file size limit in blocks.
The
<b>-f</b>
option is also the default case.

</dl>
</blockquote><h4><a name = "tag_001_014_2433">&nbsp;</a>OPERANDS</h4><blockquote>
The following operand is supported:
<dl compact>

<dt><i>blocks</i><dd>The number of 512-byte blocks to use as the new
file size limit.

</dl>
</blockquote><h4><a name = "tag_001_014_2434">&nbsp;</a>STDIN</h4><blockquote>
Not used.
</blockquote><h4><a name = "tag_001_014_2435">&nbsp;</a>INPUT FILES</h4><blockquote>
None.
</blockquote><h4><a name = "tag_001_014_2436">&nbsp;</a>ENVIRONMENT VARIABLES</h4><blockquote>
The following environment variables affect the execution of
<i>ulimit</i>:
<dl compact>

<dt><i>LANG</i><dd>Provide a default value for the internationalisation variables
that are unset or null.
If
<i>LANG</i>
is unset or null, the corresponding value from the
implementation-dependent default locale will be used.
If any of the internationalisation variables contains an invalid setting, the
utility will behave as if none of the variables had been defined.

<dt><i>LC_ALL</i><dd>
If set to a non-empty string value,
override the values of all the other internationalisation variables.

<dt><i>LC_CTYPE</i><dd>
Determine the
locale for the interpretation of sequences of bytes of text data as
characters (for example, single- as opposed to multi-byte characters
in arguments).

<dt><i>LC_MESSAGES</i><dd>
Determine the locale that should be used to affect
the format and contents of diagnostic
messages written to standard error.

<dt><i>NLSPATH</i><dd>
Determine the location of message catalogues
for the processing of
<i>LC_MESSAGES .
</i>
</dl>
</blockquote><h4><a name = "tag_001_014_2437">&nbsp;</a>ASYNCHRONOUS EVENTS</h4><blockquote>
Default.
<br>
</blockquote><h4><a name = "tag_001_014_2438">&nbsp;</a>STDOUT</h4><blockquote>
The standard output is used when no
<i>blocks</i>
operand is present.
If the current number of blocks is limited,
the number of blocks in the current limit is written
in the following format:
<p><code>
<tt>"%d\n"</tt>, &lt;<i>number of 512-byte blocks</i>&gt;
</code>
<p>
If there is no current limit on the number of blocks, in the POSIX locale
the following format is used:
<pre>
<code>
"unlimited\n"
</code>
</pre>
</blockquote><h4><a name = "tag_001_014_2439">&nbsp;</a>STDERR</h4><blockquote>
Used only for diagnostic messages.
</blockquote><h4><a name = "tag_001_014_2440">&nbsp;</a>OUTPUT FILES</h4><blockquote>
None.
</blockquote><h4><a name = "tag_001_014_2441">&nbsp;</a>EXTENDED DESCRIPTION</h4><blockquote>
None.
</blockquote><h4><a name = "tag_001_014_2442">&nbsp;</a>EXIT STATUS</h4><blockquote>
The following exit values are returned:
<dl compact>

<dt>0<dd>Successful completion.

<dt>&gt;0<dd>A request for a higher limit was rejected or
an error occurred.

</dl>
</blockquote><h4><a name = "tag_001_014_2443">&nbsp;</a>CONSEQUENCES OF ERRORS</h4><blockquote>
Default.
</blockquote><h4><a name = "tag_001_014_2444">&nbsp;</a>APPLICATION USAGE</h4><blockquote>
Since
<i>ulimit</i>
affects the current shell execution environment,
it is always provided as a shell regular built-in.
If it is called in separate utility execution environment,
such as one of the following:
<pre>
<code>
nohup ulimit -f 10000
env ulimit 10000
</code>
</pre>
it will not affect the file size limit of the caller's environment.
<p>
Once a limit has been decreased by a process, it cannot be
increased (unless appropriate privileges are involved),
even back to the original system limit.
</blockquote><h4><a name = "tag_001_014_2445">&nbsp;</a>EXAMPLES</h4><blockquote>
Set the file size limit to 51,200 bytes:
<pre>
<code>
ulimit -f 100
</code>
</pre>
</blockquote><h4><a name = "tag_001_014_2446">&nbsp;</a>FUTURE DIRECTIONS</h4><blockquote>
None.
</blockquote><h4><a name = "tag_001_014_2447">&nbsp;</a>SEE ALSO</h4><blockquote>
The <b>XSH</b> specification description of
<i><a href="../xsh/ulimit.html">ulimit()</a></i>.
</blockquote><hr size=2 noshade>
<center><font size=2>
UNIX &reg; is a registered Trademark of The Open Group.<br>
Copyright &copy; 1997 The Open Group
<br> [ <a href="../index.html">Main Index</a> | <a href="../xshix.html">XSH</a> | <a href="../xcuix.html">XCU</a> | <a href="../xbdix.html">XBD</a> | <a href="../cursesix.html">XCURSES</a> | <a href="../xnsix.html">XNS</a> ]

</font></center><hr size=2 noshade>
</body></html>
